package connexion;

/**
 * Classe Connexion
 * 
 * Version 1.0.0 : Version initiale
 */

import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.BoxLayout;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.Box;
import javax.swing.JButton;

import acheteur.VueAcheteur;

public class Connexion extends JPanel {

	private static final long serialVersionUID = 42L;

	private JTextField identifiant;
	private JButton boutonValider;
	private VueAcheteur vueAcheteur;

	/**
	 * Unique constructeur de la classe.
	 * 
	 * @param vueAcheteur
	 */
	public Connexion(VueAcheteur vueAcheteur) {

		super();

		this.vueAcheteur = vueAcheteur;

		setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));

		Component v1 = Box.createVerticalGlue();
		add(v1);

		JPanel p1 = new JPanel();
		add(p1);

		JLabel l1 = new JLabel(
				"<html><center>Bienvenue sur l'application <b>Ench\u00E8res</b></center><br/><center>Veuillez entrez un identifiant</center></html>");
		p1.add(l1);

		JPanel p2 = new JPanel();
		add(p2);

		JLabel l2 = new JLabel("Identifiant : ");
		p2.add(l2);

		identifiant = new JTextField();
		p2.add(identifiant);
		identifiant.setColumns(10);

		JPanel p3 = new JPanel();
		add(p3);

		boutonValider = new JButton("Valider");

		boutonValider.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent arg0) {

				if (getIdentifiant().getText().equals("")) {

					JOptionPane.showMessageDialog(null,
							"Il vous manque un identifiant", "Erreur",
							JOptionPane.ERROR_MESSAGE);

					return;
				}

				getVueClient().ouvrirApplication();
			}
		});

		p3.add(boutonValider);

		Component v2 = Box.createVerticalGlue();
		add(v2);
	}

	/**
	 * Assesseur de l'identifiant.
	 * 
	 * @return
	 */
	public JTextField getIdentifiant() {

		return identifiant;
	}

	/**
	 * Assesseur de la vue acheteur.
	 * 
	 * @return
	 */
	public VueAcheteur getVueClient() {

		return vueAcheteur;
	}

	/**
	 * Assesseur du bouton valider.
	 * 
	 * @return
	 */
	public JButton getBoutonValider() {

		return boutonValider;
	}
}
